In [1]:
import IPython
import numpy as np
import librosa
import matplotlib.pyplot as plt
In [2]:
AUDIO_FILES = [
    'audio_0.npy',
    'audio_1.npy'
]

SAMPLE_RATE = 44100
In [3]:
sound_sum = np.array([])

for i, file in enumerate(AUDIO_FILES):
    data = np.load(file)
    if i == 0:
        sound_sum = data
    else:
        sound_sum += data
        
    print(file)
    IPython.display.display(IPython.display.Audio(data, rate=SAMPLE_RATE))
    
print('~~~ sound sum ~~~')
IPython.display.display(IPython.display.Audio(sound_sum, rate=SAMPLE_RATE))
audio_0.npy
Your browser does not support the audio element.
audio_1.npy
Your browser does not support the audio element.
~~~ sound sum ~~~
Your browser does not support the audio element.
In [4]:
fig, axs = plt.subplots(len(AUDIO_FILES), 2, figsize=(20, 20))

total = []

x = librosa.fft_frequencies(sr=44100, n_fft=2048)

audio_arrays = []

for i, file in enumerate(AUDIO_FILES):
    data = np.load(file).astype(np.float64)
    
    s = librosa.amplitude_to_db(np.abs(librosa.stft(data, n_fft=2048)))
    
    y = np.sum(s, axis=1)
    
    axs[i][0].plot(x, y)
    axs[i][0].axvline(1000, linestyle=':', c='orange')
    
    axs[i][1].imshow(s, origin='lower', aspect='auto')
    axs[i][1].set_title(file)